package com.longtu.chat.util;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.geo.Distance;
import org.springframework.stereotype.Component;

/**
 * @author wtl
 * @date 2022/4/19 13:33
 */
@Component
public class RedisUtils {
    @Autowired
    RedisOperator redisOperator;

    /**
     * 添加用户经纬度信息
     * @param name 用户名称
     * @param x 维度
     * @param y 精度
     */
    public long geoAdd(String name,double x, double y){
        return redisOperator.geoAdd(Constant.RedisKey.xyKey,x,y,name);
    }

    /**
     * 删除用户经纬度信息
     * @param name 用户名称 可添加多个值
     */
    public void geoDel(Object... name){
        redisOperator.zSetRemove(Constant.RedisKey.xyKey,name);
    }

    /**
     * 返回两名用户之间的距离
     */
    public Distance geoCalculationDistance(String nameOne,String nameTow){
        return redisOperator.geoCalculationDistance(Constant.RedisKey.xyKey, nameOne, nameTow);

    }
}
